Building Blocks specified in OGC API - MovingFeatures - Part 1: Features Extension (0.0.1)

Download OpenAPI specification:Download

Taehoon Kim: kim.taehoon@aist.go.jp License: OGC License

This is the OpenAPI definition of Moving Features API specification that conforms to the OGC Moving Features Encoding Extension - JSON.

Capabilities

Essential characteristics of the information available from the API.

Landing page

The landing page provides links to the API definition, the conformance statements and to the feature collections in this dataset.

Responses

Response samples

Content type
application/json
{
  • "title": "Movingfeatures data server",
  • "description": "Access to data about moving features",
  • "links": []
}

Information about specifications that this API conforms to

A list of all conformance classes specified in a standard that the server conforms to.

Responses

API definition

A list of all API definition

Responses

Response samples

Content type
application/json
{
  • "openapi": "3.1.0",
  • "info": {},
  • "tags": [
    ],
  • "paths": {
    },
  • "components": {
    }
}

Retrieve catalogs of moving features collection

A user can retrieve catalogs to access collections by simple filtering and a limit.

Responses

Response samples

Content type
application/json
{}

MovingFeatureCollection

Collections of moving features to be logically managed by a user.

Register metadata about a collection of moving features

A user SHOULD register metadata about a collection of moving features into the system.

Request Body schema: application/json
title
string

human readable title of the collection

updateFrequency
number

a time interval of sampling location. The unit is millisecond.

description
string

any description

Responses

Request samples

Content type
application/json
{
  • "title": "moving_feature_collection_sample",
  • "updateFrequency": 1000,
  • "description": ""
}

Response samples

Content type
application/json
{
  • "id": "mfc-1"
}

Access metadata about the collection

A user can access metadata with id collectionId.

path Parameters
collectionId
required
string

local identifier of a collection

Responses

Response samples

Content type
application/json
{}

Delete the collection

The collection catalog with id collectionId and including metadata and moving features SHOULD be deleted.

path Parameters
collectionId
required
string

local identifier of a collection

Responses

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

Replace metadata about the collection

A user SHOULD replace metadata with id collectionId.

path Parameters
collectionId
required
string

local identifier of a collection

Request Body schema: application/json
title
string

human readable title of the collection

updateFrequency
number

a time interval of sampling location. The unit is millisecond.

description
string

any description

Responses

Request samples

Content type
application/json
{
  • "title": "moving_feature_collection_sample",
  • "updateFrequency": 1000,
  • "description": ""
}

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

MovingFeatures

Moving feature data, including the temporal geometry, temporal properties, etc.

Retrieve moving feature collection

A user can retrieve moving feature collection to access the static information of the moving feature by simple filtering and a limit.

query Parameters
Array of numbers or Array of numbers

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Minimum value, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Maximum value, coordinate axis 3 (optional)

If the value consists of four numbers, the coordinate reference system is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter bbox-crs.

If the value consists of six numbers, the coordinate reference system is WGS 84 longitude/latitude/ellipsoidal height (http://www.opengis.net/def/crs/OGC/0/CRS84h) unless a different coordinate reference system is specified in the parameter bbox-crs.

The query parameter bbox-crs is specified in OGC API - Features - Part 2: Coordinate Reference Systems by Reference.

For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box.

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

datetime
string

Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end).

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

limit
integer [ 1 .. 10000 ]
Default: 10

The optional limit parameter limits the number of items that are presented in the response document.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted.

Minimum = 1. Maximum = 10000. Default = 10.

Responses

Response samples

Content type
application/json
{
  • "type": "FeatureCollection",
  • "features": [
    ],
  • "crs": {
    },
  • "trs": {
    },
  • "links": [],
  • "timeStamp": "2020-01-01T12:00:00Z",
  • "numberMatched": 100,
  • "numberReturned": 1
}

Insert moving features

A user SHOULD insert a set of moving features or a moving feature into a collection with id collectionId.

The request body schema SHALL follows the MovingFeature object (and MovingFeatureCollection object) in the OGC MF-JSON.

path Parameters
collectionId
required
string

local identifier of a collection

Request Body schema: application/json
One of
type
required
string
Value: "Feature"
required
TemporalPrimitiveGeometry Object (object) or TemporalComplexGeometry Object (object) (temporalGeometry)
object or object (definitions-crs)
object or object (definitions-trs)
null or Array of any (temporalProperties)
null or Array of numbers (bbox)
null or Array of strings (time)
null or (GeoJSON Geometry (GeoJSON Point (object) or GeoJSON LineString (object) or GeoJSON Polygon (object) or GeoJSON MultiPoint (object) or GeoJSON MultiLineString (object) or GeoJSON MultiPolygon (object))) or GeoJSON GeometryCollection (object) (geometry)
null or object (properties)
string or number

An identifier for the feature

Responses

Request samples

Content type
application/json
Example
{
  • "type": "Feature",
  • "temporalGeometry": {
    },
  • "crs": {
    },
  • "trs": {},
  • "temporalProperties": [
    ],
  • "bbox": [
    ],
  • "time": [
    ],
  • "geometry": {
    },
  • "properties": {},
  • "id": "mf-1"
}

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

Access the static data of the moving feature

A user can access a static data of a moving feature with id mFeatureId.

The static data of a moving feature is not included temporal geometries and temporal properties.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

Responses

Response samples

Content type
application/geo+json
{
  • "id": "mf-1",
  • "type": "Feature",
  • "geometry": {
    },
  • "properties": {},
  • "bbox": [
    ],
  • "time": [
    ],
  • "crs": {
    },
  • "trs": {
    }
}

Delete a single moving feature

The moving feature with id mFeatureId and including temporal geometries and properties SHOULD be deleted.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

Responses

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

TemporalGeometryCollection

The spatial change over time (temporal geometry), representing the movement of the rigid or nonrigid body of a feature.

Retrieve the movement data of the single moving feature

A user can retrieve only the movement data of a moving feature with id mFeatureId.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

query Parameters
leaf
Array of strings <date-time> non-empty unique
Array of numbers or Array of numbers

Only features that have a geometry that intersects the bounding box are selected. The bounding box is provided as four or six numbers, depending on whether the coordinate reference system includes a vertical axis (height or depth):

  • Lower left corner, coordinate axis 1
  • Lower left corner, coordinate axis 2
  • Minimum value, coordinate axis 3 (optional)
  • Upper right corner, coordinate axis 1
  • Upper right corner, coordinate axis 2
  • Maximum value, coordinate axis 3 (optional)

If the value consists of four numbers, the coordinate reference system is WGS 84 longitude/latitude (http://www.opengis.net/def/crs/OGC/1.3/CRS84) unless a different coordinate reference system is specified in the parameter bbox-crs.

If the value consists of six numbers, the coordinate reference system is WGS 84 longitude/latitude/ellipsoidal height (http://www.opengis.net/def/crs/OGC/0/CRS84h) unless a different coordinate reference system is specified in the parameter bbox-crs.

The query parameter bbox-crs is specified in OGC API - Features - Part 2: Coordinate Reference Systems by Reference.

For WGS 84 longitude/latitude the values are in most cases the sequence of minimum longitude, minimum latitude, maximum longitude and maximum latitude. However, in cases where the box spans the antimeridian the first value (west-most box edge) is larger than the third value (east-most box edge).

If the vertical axis is included, the third and the sixth number are the bottom and the top of the 3-dimensional bounding box.

If a feature has multiple spatial geometry properties, it is the decision of the server whether only a single spatial geometry property is used to determine the extent or all relevant geometries.

datetime
string

Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end).

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

limit
integer [ 1 .. 10000 ]
Default: 10

The optional limit parameter limits the number of items that are presented in the response document.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted.

Minimum = 1. Maximum = 10000. Default = 10.

Responses

Response samples

Content type
application/json
{}

Add movement data into the moving feature

A user SHOULD add more movement data into a moving feature with id mFeatureId.

The request body schema SHALL follows the TemporalGeometry object in the OGC MF-JSON.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

Request Body schema: application/json
One of
type
required
string
Enum: "MovingPoint" "MovingLineString" "MovingPolygon" "MovingPointCloud"
datetimes
required
Array of strings (datetimes) non-empty unique
required
Array of numbers or Array of numbers or Array of numbers
string or string (geometryInterpolation)
null or object
null or Array of orientation (objects)
object or object (definitions-crs)
object or object (definitions-trs)

Responses

Request samples

Content type
application/json
{
  • "type": "MovingPoint",
  • "datetimes": [
    ],
  • "coordinates": [
    ],
  • "interpolation": "Linear",
  • "orientations": [
    ]
}

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

Delete a singe temporal geometry

The temporal geometry with id tGeometryId SHOULD be deleted.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

tGeometryId
required
string

local identifier of a temporal geometry

Responses

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

TemporalPropertyCollection

The thematic change over time (temporal property), representing the variation of the value of any descriptive characteristic of a feature.

Retrieve the static information of the temporal properties data

A user can retrieve only the static information of the temporal property data that included a single moving feature with id mFeatureId.

The static data of a temporal property is not included temporal values (property values).

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

query Parameters
datetime
string

Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end).

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

limit
integer [ 1 .. 10000 ]
Default: 10

The optional limit parameter limits the number of items that are presented in the response document.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted.

Minimum = 1. Maximum = 10000. Default = 10.

Responses

Response samples

Content type
application/json
{}

Add temporal property data

A user SHOULD add more temporal property data into a moving feature with id mFeatureId.

The request body schema SHALL follows the TemporalProperties object in the OGC MF-JSON.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

Request Body schema: application/json
One of
null (TemporalProperties Objects)

Responses

Request samples

Content type
application/json
{
  • "temporalProperties": [
    ]
}

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

Retrieve a temporal property

A user can retrieve only the temporal values with a specified name tPropertyName of temporal property.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

tPropertiesName
required
string

local identifier of a temporal properties

query Parameters
leaf
Array of strings <date-time> non-empty unique
datetime
string

Either a date-time or an interval. Date and time expressions adhere to RFC 3339. Intervals may be bounded or half-bounded (double-dots at start or end).

Examples:

  • A date-time: "2018-02-12T23:20:50Z"
  • A bounded interval: "2018-02-12T00:00:00Z/2018-03-18T12:31:12Z"
  • Half-bounded intervals: "2018-02-12T00:00:00Z/.." or "../2018-03-18T12:31:12Z"

Only features that have a temporal property that intersects the value of datetime are selected.

If a feature has multiple temporal properties, it is the decision of the server whether only a single temporal property is used to determine the extent or all relevant temporal properties.

limit
integer [ 1 .. 10000 ]
Default: 10

The optional limit parameter limits the number of items that are presented in the response document.

Only items are counted that are on the first level of the collection in the response document. Nested objects contained within the explicitly requested items shall not be counted.

Minimum = 1. Maximum = 10000. Default = 10.

Responses

Response samples

Content type
application/json
{}

Add temporal values data

A user SHOULD add more temporal values data into a temporal property with id tPropertyName.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

tPropertiesName
required
string

local identifier of a temporal properties

Request Body schema: application/json
datetimes
required
Array of strings <date-time> >= 2 items unique
required
number or string or boolean
interpolation
required
string
Enum: "Discrete" "Step" "Linear" "Regression"

Responses

Request samples

Content type
application/json
{
  • "datetimes": [
    ],
  • "values": [
    ],
  • "interpolation": "Linear"
}

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}

Delete a specified temporal property

The temporal property with id tPropertyName SHOULD be deleted.

path Parameters
collectionId
required
string

local identifier of a collection

mFeatureId
required
string

local identifier of a moving feature

tPropertiesName
required
string

local identifier of a temporal properties

Responses

Response samples

Content type
application/json
{
  • "code": "500",
  • "description": "Server Internal Error"
}